<?php

	require_once 'mp3\PDO.php';
	
	Class Mp3_Cerca {
		
		private $_userid;
		const CONSULTABASE = 'SELECT id, titol, artista, data, album FROM cancons 
								WHERE ((publica = 0 AND idUsuari=:userid) OR publica = 1)';
		
		public function __construct($userid) {
			$this->_userid = $userid;
		}
		
		public function cercaArtista($artista) {
			$consultaBase = Mp3_Cerca::CONSULTABASE;
			$consultaBase .= ' AND artista LIKE :artista ';
			$consultaBase .= ' ORDER BY titol, artista, album, data';	
			$artista ='%'.$artista.'%';
			$dbStatement = mp3_PDO::getInstance()->prepare($consultaBase);
			$dbStatement->execute(array(':userid'=>$this->_userid, ':artista'=>$artista));
			$resultatCerca = $dbStatement->fetchAll(mp3_PDO::FETCH_ASSOC);	
			return $resultatCerca;
		}
		
		public function cercaCanco($canco) {
			$consultaBase = Mp3_Cerca::CONSULTABASE;
			$consultaBase .= ' AND titol LIKE :canco ';
			$consultaBase .= ' ORDER BY titol, artista, album, data ';	
			$consultaBase .= ' LIMIT 0 , 20';
			$dbStatement = mp3_PDO::getInstance()->prepare($consultaBase);
			$canco ='%'.$canco.'%';
			$dbStatement->execute(array(':userid'=>$this->_userid, ':canco'=>$canco));
			$resultatCerca = $dbStatement->fetchAll(mp3_PDO::FETCH_ASSOC);	
			return $resultatCerca;
		}
		
		public function cercaArtistaCanco($artista, $canco) {
			$consultaBase = Mp3_Cerca::CONSULTABASE;
			$consultaBase .= ' AND titol LIKE :canco ';
			$consultaBase .= ' AND artista LIKE :artista ';
			$consultaBase .= ' ORDER BY titol, artista, album, data ';
			$consultaBase .= ' LIMIT 0 , 20';
			$artista ='%'.$artista.'%';
			$canco ='%'.$canco.'%';
			$dbStatement = mp3_PDO::getInstance()->prepare($consultaBase);
			$dbStatement->execute(array(':userid'=>$this->_userid, ':artista'=>$artista, ':canco'=>$canco));
			$resultatCerca = $dbStatement->fetchAll(mp3_PDO::FETCH_ASSOC);	
			return $resultatCerca;
		}
		
	}

?>